package com.aplink.generic.pojo.controlspec.viewpager;

import com.aplink.generic.pojo.PageCollection;
import com.aplink.generic.pojo.PageItem;
import com.aplink.generic.pojo.controlspec.ControlSpec;

public class ViewPagerSpec extends ControlSpec {
    /**
     * 
     */
    private static final long serialVersionUID = -3518903847579088030L;
    private boolean hasPageTransformer;
    private String mHeaderStyle;
    private int mOffscreenPageLimit;
    private PageCollection mPageCollection;
    private int mStartPage = 0;

    public ViewPagerSpec() {
        this.mPageCollection = new PageCollection();
    }

    public ViewPagerSpec(final int currentPage,
            final PageCollection pageCollection, final String headerStyle) {
        this.mHeaderStyle = headerStyle;
    }

    public ViewPagerSpec(final PageCollection pageCollection) {
        this.mPageCollection = pageCollection;
    }

    public void add(final PageItem pagerItem) {
        this.mPageCollection.add(pagerItem);
    }

    public int getDefaultTargetIndex() {
        return this.mPageCollection.getIndex();
    }

    public String getHeaderStyle() {
        return this.mHeaderStyle;
    }

    public int getOffscreenPageLimit() {
        return this.mOffscreenPageLimit;
    }

    public PageCollection getPageCollection() {
        return this.mPageCollection;
    }

    public int getStartPage() {
        return this.mStartPage;
    }

    public boolean isHasPageTransformer() {
        return this.hasPageTransformer;
    }

    public void setHasPageTransformer(final boolean hasPageTransformer) {
        this.hasPageTransformer = hasPageTransformer;
    }

    public void setHeaderStyle(final String headerStyle) {
        this.mHeaderStyle = headerStyle;
    }

    public void setOffscreenPageLimit(final int offscreenPageLimit) {
        this.mOffscreenPageLimit = offscreenPageLimit;
    }

    public void setPageCollection(final PageCollection pageCollection) {
        this.mPageCollection = pageCollection;
    }

    public void setStartPage(final int startPage) {
        this.mStartPage = startPage;
    }

}
